% 对数变换对比度增强回调函数
function logarithmicContrastEnhance(fig)
    data = guidata(fig);
    img = data.img;
    if isempty(img)
        msgbox('请先加载图像');
    else
        if size(img, 3) == 3
            img = rgb2gray(img); % 如果是彩色图，转换为灰度图
        end
        
        % 对数变换
        c = 255 / log(1 + double(max(img(:))));
        enhancedImg = c * log(1 + double(img));
        enhancedImg = uint8(min(max(enhancedImg, 0), 255)); % 保证值在0到255之间
        
        % 显示增强后的图像
        imshow(enhancedImg, 'Parent', data.ax);
        data.img = enhancedImg;
        guidata(fig, data); % 更新存储数据
    end
end
